<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>lwIP network interface integration library: Port functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen_style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.cypress.com/"><img alt="Logo" src="cypress_logo.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">lwIP network interface integration library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('group__group__lwip__network__interface__integration__functions.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">Port functions<div class="ingroups"><a class="el" href="group__group__lwip__network__interface__integration.html">lwip-network-interface-integration</a></div></div></div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">General Description</h2>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga63afa6bcbec8b99a8593ee788bbc2455"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga63afa6bcbec8b99a8593ee788bbc2455">cy_network_ip_change_callback_t</a>) (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, void *user_data)</td></tr>
<tr class="memdesc:ga63afa6bcbec8b99a8593ee788bbc2455"><td class="mdescLeft">&#160;</td><td class="mdescRight">IP change callback function prototype Callback function which can be registered to receive IP address changes must be of this prototype.  <a href="group__group__lwip__network__interface__integration__functions.html#ga63afa6bcbec8b99a8593ee788bbc2455">More...</a><br /></td></tr>
<tr class="separator:ga63afa6bcbec8b99a8593ee788bbc2455"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2701c2301b39551cb34f3ed4aa880d55"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga2701c2301b39551cb34f3ed4aa880d55">cy_network_activity_event_callback_t</a>) (bool event_type)</td></tr>
<tr class="memdesc:ga2701c2301b39551cb34f3ed4aa880d55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Network activity callback function prototype.  <a href="group__group__lwip__network__interface__integration__functions.html#ga2701c2301b39551cb34f3ed4aa880d55">More...</a><br /></td></tr>
<tr class="separator:ga2701c2301b39551cb34f3ed4aa880d55"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga1344ede190aa5e0e3d30d29ccb672e72"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga1344ede190aa5e0e3d30d29ccb672e72">cy_network_init</a> ()</td></tr>
<tr class="memdesc:ga1344ede190aa5e0e3d30d29ccb672e72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the network stack, and allocates and initializes the resources needed by this library.  <a href="group__group__lwip__network__interface__integration__functions.html#ga1344ede190aa5e0e3d30d29ccb672e72">More...</a><br /></td></tr>
<tr class="separator:ga1344ede190aa5e0e3d30d29ccb672e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga52dabc3fc7fc5d33c1bec3cbb9d0176a"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga52dabc3fc7fc5d33c1bec3cbb9d0176a">cy_network_deinit</a> ()</td></tr>
<tr class="memdesc:ga52dabc3fc7fc5d33c1bec3cbb9d0176a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deinitializes the network stack, and releases the resources allocated in the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga1344ede190aa5e0e3d30d29ccb672e72">cy_network_init</a> function.  <a href="group__group__lwip__network__interface__integration__functions.html#ga52dabc3fc7fc5d33c1bec3cbb9d0176a">More...</a><br /></td></tr>
<tr class="separator:ga52dabc3fc7fc5d33c1bec3cbb9d0176a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabf2995f3fe153eba71d52981886cf5f9"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> (<a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga1609e48b69352ef0c60d2215ef6a2cef">cy_network_hw_interface_type_t</a> iface_type, uint8_t iface_idx, void *hw_interface, uint8_t *mac_address, <a class="el" href="structcy__network__static__ip__addr__t.html">cy_network_static_ip_addr_t</a> *ipaddr, <a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> **iface_context)</td></tr>
<tr class="memdesc:gabf2995f3fe153eba71d52981886cf5f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a network interface.  <a href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">More...</a><br /></td></tr>
<tr class="separator:gabf2995f3fe153eba71d52981886cf5f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf414d396ecdb54b41b2b0fdd65e6afef"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gaf414d396ecdb54b41b2b0fdd65e6afef">cy_network_remove_nw_interface</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context)</td></tr>
<tr class="memdesc:gaf414d396ecdb54b41b2b0fdd65e6afef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a network interface.  <a href="group__group__lwip__network__interface__integration__functions.html#gaf414d396ecdb54b41b2b0fdd65e6afef">More...</a><br /></td></tr>
<tr class="separator:gaf414d396ecdb54b41b2b0fdd65e6afef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0555791a8850099ace2f3735d4f8c55"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gaf0555791a8850099ace2f3735d4f8c55">cy_network_get_nw_interface</a> (<a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga1609e48b69352ef0c60d2215ef6a2cef">cy_network_hw_interface_type_t</a> iface_type, uint8_t iface_idx)</td></tr>
<tr class="memdesc:gaf0555791a8850099ace2f3735d4f8c55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the network interface for the given network interface type.  <a href="group__group__lwip__network__interface__integration__functions.html#gaf0555791a8850099ace2f3735d4f8c55">More...</a><br /></td></tr>
<tr class="separator:gaf0555791a8850099ace2f3735d4f8c55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9f0108965c7578de0d118ddd3003ba0c"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga9f0108965c7578de0d118ddd3003ba0c">cy_network_ip_up</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context)</td></tr>
<tr class="memdesc:ga9f0108965c7578de0d118ddd3003ba0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Brings up the network link layer and starts DHCP if required.  <a href="group__group__lwip__network__interface__integration__functions.html#ga9f0108965c7578de0d118ddd3003ba0c">More...</a><br /></td></tr>
<tr class="separator:ga9f0108965c7578de0d118ddd3003ba0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0873c42900c9eca69751048a14fe926f"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga0873c42900c9eca69751048a14fe926f">cy_network_ip_down</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context)</td></tr>
<tr class="memdesc:ga0873c42900c9eca69751048a14fe926f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Brings down the network interface and network link layer, and stops DHCP.  <a href="group__group__lwip__network__interface__integration__functions.html#ga0873c42900c9eca69751048a14fe926f">More...</a><br /></td></tr>
<tr class="separator:ga0873c42900c9eca69751048a14fe926f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9c2c2ce9e0e01b586efe9707b455825"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gab9c2c2ce9e0e01b586efe9707b455825">cy_network_dhcp_renew</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context)</td></tr>
<tr class="memdesc:gab9c2c2ce9e0e01b586efe9707b455825"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalidates all ARP entries and renews DHCP.  <a href="group__group__lwip__network__interface__integration__functions.html#gab9c2c2ce9e0e01b586efe9707b455825">More...</a><br /></td></tr>
<tr class="separator:gab9c2c2ce9e0e01b586efe9707b455825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8d7f732575e071b98b96dd6fb2265519"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga8d7f732575e071b98b96dd6fb2265519">cy_network_register_ip_change_cb</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, <a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga63afa6bcbec8b99a8593ee788bbc2455">cy_network_ip_change_callback_t</a> cb, void *user_data)</td></tr>
<tr class="memdesc:ga8d7f732575e071b98b96dd6fb2265519"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helps to register/unregister for any IP address changes from the network stack.  <a href="group__group__lwip__network__interface__integration__functions.html#ga8d7f732575e071b98b96dd6fb2265519">More...</a><br /></td></tr>
<tr class="separator:ga8d7f732575e071b98b96dd6fb2265519"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga239cf5cd46a186ee0dfe28b659b5a9f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga239cf5cd46a186ee0dfe28b659b5a9f0">cy_network_activity_register_cb</a> (<a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga2701c2301b39551cb34f3ed4aa880d55">cy_network_activity_event_callback_t</a> cb)</td></tr>
<tr class="memdesc:ga239cf5cd46a186ee0dfe28b659b5a9f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helps to register/unregister a callback function that will be invoked on any Tx/Rx activity on any network interface.  <a href="group__group__lwip__network__interface__integration__functions.html#ga239cf5cd46a186ee0dfe28b659b5a9f0">More...</a><br /></td></tr>
<tr class="separator:ga239cf5cd46a186ee0dfe28b659b5a9f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac0882cbd33e9886b2b24152fe85a57f6"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gac0882cbd33e9886b2b24152fe85a57f6">cy_network_activity_notify</a> (<a class="el" href="group__group__lwip__network__interface__integration__enums.html#gaf3eda6c4137ea81555d91cf114a6dc84">cy_network_activity_type_t</a> activity_type)</td></tr>
<tr class="memdesc:gac0882cbd33e9886b2b24152fe85a57f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Notifies the network activity to the Low Power Assistant (LPA) module.  <a href="group__group__lwip__network__interface__integration__functions.html#gac0882cbd33e9886b2b24152fe85a57f6">More...</a><br /></td></tr>
<tr class="separator:gac0882cbd33e9886b2b24152fe85a57f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae498113a5148caeb895ebc5d67fd41c8"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gae498113a5148caeb895ebc5d67fd41c8">cy_network_get_ip_address</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, cy_nw_ip_address_t *ip_addr)</td></tr>
<tr class="memdesc:gae498113a5148caeb895ebc5d67fd41c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the IPv4 address of the given interface.  <a href="group__group__lwip__network__interface__integration__functions.html#gae498113a5148caeb895ebc5d67fd41c8">More...</a><br /></td></tr>
<tr class="separator:gae498113a5148caeb895ebc5d67fd41c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga04dae4f52e7c608c102efef6f4fe1eb2"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga04dae4f52e7c608c102efef6f4fe1eb2">cy_network_get_ipv6_address</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, <a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga8e6ec9aea9591de410d06159c6d70095">cy_network_ipv6_type_t</a> type, cy_nw_ip_address_t *ip_addr)</td></tr>
<tr class="memdesc:ga04dae4f52e7c608c102efef6f4fe1eb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the IPv6 address of the given interface.  <a href="group__group__lwip__network__interface__integration__functions.html#ga04dae4f52e7c608c102efef6f4fe1eb2">More...</a><br /></td></tr>
<tr class="separator:ga04dae4f52e7c608c102efef6f4fe1eb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ef631532460b722aacfee8a973ad6f4"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga5ef631532460b722aacfee8a973ad6f4">cy_network_get_gateway_ip_address</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, cy_nw_ip_address_t *gateway_addr)</td></tr>
<tr class="memdesc:ga5ef631532460b722aacfee8a973ad6f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the gateway IP address of the given interface.  <a href="group__group__lwip__network__interface__integration__functions.html#ga5ef631532460b722aacfee8a973ad6f4">More...</a><br /></td></tr>
<tr class="separator:ga5ef631532460b722aacfee8a973ad6f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacafba46ba65d3b82abaeeb4897cfda78"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gacafba46ba65d3b82abaeeb4897cfda78">cy_network_get_gateway_mac_address</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, cy_nw_ip_mac_t *mac_addr)</td></tr>
<tr class="memdesc:gacafba46ba65d3b82abaeeb4897cfda78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the MAC address of the gateway for the given interface.  <a href="group__group__lwip__network__interface__integration__functions.html#gacafba46ba65d3b82abaeeb4897cfda78">More...</a><br /></td></tr>
<tr class="separator:gacafba46ba65d3b82abaeeb4897cfda78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7f8a15b99730c96acc26df268b0f697"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#gaf7f8a15b99730c96acc26df268b0f697">cy_network_get_netmask_address</a> (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, cy_nw_ip_address_t *net_mask_addr)</td></tr>
<tr class="memdesc:gaf7f8a15b99730c96acc26df268b0f697"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the subnet mask address of the given interface.  <a href="group__group__lwip__network__interface__integration__functions.html#gaf7f8a15b99730c96acc26df268b0f697">More...</a><br /></td></tr>
<tr class="separator:gaf7f8a15b99730c96acc26df268b0f697"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga96878466389ed897cb41465388436856"><td class="memItemLeft" align="right" valign="top">cy_rslt_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga96878466389ed897cb41465388436856">cy_network_ping</a> (void *if_ctx, cy_nw_ip_address_t *address, uint32_t timeout_ms, uint32_t *elapsed_time_ms)</td></tr>
<tr class="memdesc:ga96878466389ed897cb41465388436856"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends a ping request to the given IP address.  <a href="group__group__lwip__network__interface__integration__functions.html#ga96878466389ed897cb41465388436856">More...</a><br /></td></tr>
<tr class="separator:ga96878466389ed897cb41465388436856"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="ga63afa6bcbec8b99a8593ee788bbc2455" name="ga63afa6bcbec8b99a8593ee788bbc2455"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga63afa6bcbec8b99a8593ee788bbc2455">&#9670;&nbsp;</a></span>cy_network_ip_change_callback_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* cy_network_ip_change_callback_t) (<a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *iface_context, void *user_data)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IP change callback function prototype Callback function which can be registered to receive IP address changes must be of this prototype. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">user_data</td><td>User data provided at the time of callback registration </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga2701c2301b39551cb34f3ed4aa880d55" name="ga2701c2301b39551cb34f3ed4aa880d55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2701c2301b39551cb34f3ed4aa880d55">&#9670;&nbsp;</a></span>cy_network_activity_event_callback_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* cy_network_activity_event_callback_t) (bool event_type)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Network activity callback function prototype. </p>
<p >The callback function which can be registered/unregistered for any network activity must be of this prototype. </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga1344ede190aa5e0e3d30d29ccb672e72" name="ga1344ede190aa5e0e3d30d29ccb672e72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1344ede190aa5e0e3d30d29ccb672e72">&#9670;&nbsp;</a></span>cy_network_init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_init </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes the network stack, and allocates and initializes the resources needed by this library. </p>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="ga52dabc3fc7fc5d33c1bec3cbb9d0176a" name="ga52dabc3fc7fc5d33c1bec3cbb9d0176a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga52dabc3fc7fc5d33c1bec3cbb9d0176a">&#9670;&nbsp;</a></span>cy_network_deinit()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_deinit </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Deinitializes the network stack, and releases the resources allocated in the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga1344ede190aa5e0e3d30d29ccb672e72">cy_network_init</a> function. </p>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gabf2995f3fe153eba71d52981886cf5f9" name="gabf2995f3fe153eba71d52981886cf5f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabf2995f3fe153eba71d52981886cf5f9">&#9670;&nbsp;</a></span>cy_network_add_nw_interface()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_add_nw_interface </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga1609e48b69352ef0c60d2215ef6a2cef">cy_network_hw_interface_type_t</a>&#160;</td>
          <td class="paramname"><em>iface_type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>iface_idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>hw_interface</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>mac_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structcy__network__static__ip__addr__t.html">cy_network_static_ip_addr_t</a> *&#160;</td>
          <td class="paramname"><em>ipaddr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> **&#160;</td>
          <td class="paramname"><em>iface_context</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds a network interface. </p>
<p >Binds the hardware interface to the IP layer of the network stack.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_type</td><td>Network interface type <a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga1609e48b69352ef0c60d2215ef6a2cef">cy_network_hw_interface_type_t</a> </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_idx</td><td>Network interface index. If the cy_network_add_nw_interface function is called multiple times for same interface type, the index passed should be the hardware port available on the device. This is used to handle multiple Ethernet interfaces. For example, ethernet port0 will have index as 0 and ethernet port1 will have index as 1. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">hw_interface</td><td>Handle to the already initialized HW interface. For example, the whd_interface_t pointer that is initialized using the cybsp_wifi_init_primary() function. Similarly for Ethernet, it can be the Ethernet interface pointer. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">mac_address</td><td>MAC address to be configured to the network interface </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ipaddr</td><td>Static IP address provided by the user </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">iface_context</td><td>Interface context. Network core library allocates memory for this structure and initializes it. Caller should not modify the contents of this structure, and should not free the memory. To free the memory allocated by this function, the caller should invoke the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gaf414d396ecdb54b41b2b0fdd65e6afef">cy_network_remove_nw_interface</a> function.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gaf414d396ecdb54b41b2b0fdd65e6afef" name="gaf414d396ecdb54b41b2b0fdd65e6afef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf414d396ecdb54b41b2b0fdd65e6afef">&#9670;&nbsp;</a></span>cy_network_remove_nw_interface()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_remove_nw_interface </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Removes a network interface. </p>
<p >Unbinds the network interface from the IP layer of the network stack.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gaf0555791a8850099ace2f3735d4f8c55" name="gaf0555791a8850099ace2f3735d4f8c55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf0555791a8850099ace2f3735d4f8c55">&#9670;&nbsp;</a></span>cy_network_get_nw_interface()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void * cy_network_get_nw_interface </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga1609e48b69352ef0c60d2215ef6a2cef">cy_network_hw_interface_type_t</a>&#160;</td>
          <td class="paramname"><em>iface_type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>iface_idx</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the network interface for the given network interface type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_type</td><td>Network interface type </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_idx</td><td>Network interface index</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Associated network stack's net interface structure for the HW interface </dd></dl>

</div>
</div>
<a id="ga9f0108965c7578de0d118ddd3003ba0c" name="ga9f0108965c7578de0d118ddd3003ba0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9f0108965c7578de0d118ddd3003ba0c">&#9670;&nbsp;</a></span>cy_network_ip_up()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_ip_up </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Brings up the network link layer and starts DHCP if required. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS on successful network bring up; failure code otherwise. </dd></dl>

</div>
</div>
<a id="ga0873c42900c9eca69751048a14fe926f" name="ga0873c42900c9eca69751048a14fe926f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0873c42900c9eca69751048a14fe926f">&#9670;&nbsp;</a></span>cy_network_ip_down()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_ip_down </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Brings down the network interface and network link layer, and stops DHCP. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS on successful teardown of the network; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gab9c2c2ce9e0e01b586efe9707b455825" name="gab9c2c2ce9e0e01b586efe9707b455825"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab9c2c2ce9e0e01b586efe9707b455825">&#9670;&nbsp;</a></span>cy_network_dhcp_renew()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_dhcp_renew </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invalidates all ARP entries and renews DHCP. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS on successful network bring up; failure code otherwise. </dd></dl>

</div>
</div>
<a id="ga8d7f732575e071b98b96dd6fb2265519" name="ga8d7f732575e071b98b96dd6fb2265519"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8d7f732575e071b98b96dd6fb2265519">&#9670;&nbsp;</a></span>cy_network_register_ip_change_cb()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cy_network_register_ip_change_cb </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga63afa6bcbec8b99a8593ee788bbc2455">cy_network_ip_change_callback_t</a>&#160;</td>
          <td class="paramname"><em>cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>user_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Helps to register/unregister for any IP address changes from the network stack. </p>
<p >Passing "NULL" as callback will deregister the IP changes callback.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cb</td><td>IP address change callback function </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">user_data</td><td>User data that is passed to the callback function </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga239cf5cd46a186ee0dfe28b659b5a9f0" name="ga239cf5cd46a186ee0dfe28b659b5a9f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga239cf5cd46a186ee0dfe28b659b5a9f0">&#9670;&nbsp;</a></span>cy_network_activity_register_cb()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cy_network_activity_register_cb </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga2701c2301b39551cb34f3ed4aa880d55">cy_network_activity_event_callback_t</a>&#160;</td>
          <td class="paramname"><em>cb</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Helps to register/unregister a callback function that will be invoked on any Tx/Rx activity on any network interface. </p>
<p >Passing "NULL" as cb will deregister the activity callback.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">cb</td><td>Network activity callback function </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gac0882cbd33e9886b2b24152fe85a57f6" name="gac0882cbd33e9886b2b24152fe85a57f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac0882cbd33e9886b2b24152fe85a57f6">&#9670;&nbsp;</a></span>cy_network_activity_notify()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_activity_notify </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__lwip__network__interface__integration__enums.html#gaf3eda6c4137ea81555d91cf114a6dc84">cy_network_activity_type_t</a>&#160;</td>
          <td class="paramname"><em>activity_type</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Notifies the network activity to the Low Power Assistant (LPA) module. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">activity_type</td><td>Network activity type <a class="el" href="group__group__lwip__network__interface__integration__enums.html#gaf3eda6c4137ea81555d91cf114a6dc84">cy_network_activity_type_t</a> to be notified to the LPA module</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gae498113a5148caeb895ebc5d67fd41c8" name="gae498113a5148caeb895ebc5d67fd41c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae498113a5148caeb895ebc5d67fd41c8">&#9670;&nbsp;</a></span>cy_network_get_ip_address()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_get_ip_address </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cy_nw_ip_address_t *&#160;</td>
          <td class="paramname"><em>ip_addr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the IPv4 address of the given interface. </p>
<p >See <a class="el" href="group__group__lwip__network__interface__integration__functions.html#ga04dae4f52e7c608c102efef6f4fe1eb2">cy_network_get_ipv6_address</a> API to get IPv6 addresses.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>: Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">ip_addr</td><td>: Pointer to an IP address structure of type cy_nw_ip_address_t</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if IP-address get is successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="ga04dae4f52e7c608c102efef6f4fe1eb2" name="ga04dae4f52e7c608c102efef6f4fe1eb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga04dae4f52e7c608c102efef6f4fe1eb2">&#9670;&nbsp;</a></span>cy_network_get_ipv6_address()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_get_ipv6_address </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__group__lwip__network__interface__integration__enums.html#ga8e6ec9aea9591de410d06159c6d70095">cy_network_ipv6_type_t</a>&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cy_nw_ip_address_t *&#160;</td>
          <td class="paramname"><em>ip_addr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the IPv6 address of the given interface. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>: Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>: IPv6 address type. Only IPv6 link-local address type is supported. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">ip_addr</td><td>: Pointer to an IP address structure of type cy_nw_ip_address_t</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if IP-address get is successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="ga5ef631532460b722aacfee8a973ad6f4" name="ga5ef631532460b722aacfee8a973ad6f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5ef631532460b722aacfee8a973ad6f4">&#9670;&nbsp;</a></span>cy_network_get_gateway_ip_address()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_get_gateway_ip_address </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cy_nw_ip_address_t *&#160;</td>
          <td class="paramname"><em>gateway_addr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the gateway IP address of the given interface. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>: Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">gateway_addr</td><td>: Pointer to an IP address structure of type cy_nw_ip_address_t to be filled with the gateway IP address</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if retrieval of the gateway IP address was successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gacafba46ba65d3b82abaeeb4897cfda78" name="gacafba46ba65d3b82abaeeb4897cfda78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacafba46ba65d3b82abaeeb4897cfda78">&#9670;&nbsp;</a></span>cy_network_get_gateway_mac_address()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_get_gateway_mac_address </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cy_nw_ip_mac_t *&#160;</td>
          <td class="paramname"><em>mac_addr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the MAC address of the gateway for the given interface. </p>
<p >Uses Address Resolution Protocol (ARP) to retrieve the gateway MAC address.</p>
<p >This function is a blocking call and uses an internal timeout while running ARP.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>: Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">mac_addr</td><td>: Pointer to a MAC address structure which is filled with the gateway's MAC address on successful return</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if retrieval of the gateway MAC address was successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="gaf7f8a15b99730c96acc26df268b0f697" name="gaf7f8a15b99730c96acc26df268b0f697"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf7f8a15b99730c96acc26df268b0f697">&#9670;&nbsp;</a></span>cy_network_get_netmask_address()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_get_netmask_address </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structcy__network__interface__context.html">cy_network_interface_context</a> *&#160;</td>
          <td class="paramname"><em>iface_context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cy_nw_ip_address_t *&#160;</td>
          <td class="paramname"><em>net_mask_addr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the subnet mask address of the given interface. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">iface_context</td><td>: Interface context that has been created with the <a class="el" href="group__group__lwip__network__interface__integration__functions.html#gabf2995f3fe153eba71d52981886cf5f9">cy_network_add_nw_interface</a> function </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">net_mask_addr</td><td>: Pointer to an IP address structure of type cy_nw_ip_address_t to be filled with the subnet mask address of the interface.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if retrieval of the subnet mask address was successful; failure code otherwise. </dd></dl>

</div>
</div>
<a id="ga96878466389ed897cb41465388436856" name="ga96878466389ed897cb41465388436856"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga96878466389ed897cb41465388436856">&#9670;&nbsp;</a></span>cy_network_ping()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cy_rslt_t cy_network_ping </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>if_ctx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cy_nw_ip_address_t *&#160;</td>
          <td class="paramname"><em>address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>timeout_ms</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>elapsed_time_ms</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends a ping request to the given IP address. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">if_ctx</td><td>: Pointer to the network interface context (typecast to void *) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">address</td><td>: Pointer to the destination IP address structure to which the ping request will be sent </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">timeout_ms</td><td>: Ping request timeout in milliseconds </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">elapsed_time_ms</td><td>: Pointer to store the roundtrip time (in milliseconds), i.e., the time taken to receive the ping response from the destination </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>CY_RSLT_SUCCESS if successful; CY_RSLT_NETWORK_ERROR_PING if failure. </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath">
    <ul>
        <li class="footer">
            Generated for <b>lwIP network interface integration library</b> by <b>Cypress Semiconductor Corporation</b>.
            All rights reserved.
        </li>
    </ul>
</div>
</body>
</html>
